home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Magnum One
/
Magnum One (Mid-American Digital) (Disc Manufacturing).iso
/
d1
/
amac34.arc
/
FILE20.QM
< prev
next >
Wrap
Text File
|
1991-02-16
|
48KB
|
1,069 lines
* (FILE20).QM
*┌───────────────────────── (INDEX) FileManager Macros ────────────────────────┐
*│
*│#(F3_) Spell Check WITH Backup, QCONFIG.DAT backups ON or OFF <- new
*│#(F4_) Spell Check WITHOUT Backup, QCONFIG.DAT backups ON or OFF <- new
*│#(F5_) SAVE file WITHOUT Backup, QCONFIG.DAT backups ON <- new
*│#(F6_) SAVE file WITHOUT Backup, QCONFIG.DAT backups ON or OFF <- new
*│#(F7_) DELETE CurrentFileName Backup <- new
*│#(F8_) EDIT CurrentFileName Backup <- new
*│
*│@(7) LOAD all files in "Ring" <- key change
*│@(1) LOAD file from sorted list
*│@(4) LOAD file from "PickList", wild cards OK
*│@(5) LOAD file whose name is at the cursor
*│@(6) re-LOAD current file from disk copy
*│@(3) DELETE file from sorted list
*│@(9) EDIT file from "RingList"
*│@(0) EDIT file from "RingList" if new files have been loaded
*│@(2) READ macfile & LOAD it's txtfile from sorted list
*│@(8) READ macfile of txtfile that is loaded
*│@(F7) READ macfile & LOAD it's txtfile from txtfile list
*│@(F8) READ macfile from macfile list, txtfile is not loaded
*│
*│@(F1) SAVE file with name "Mos_Day_Hour_Min.Ext" <-change
*│@(F2) SAVE file with name "CurrentFileName.Mos_Day"
*│@(F3) SAVE Read-Only files <-change
*│@(F4) EXECUTE Dos command from List <-change
*│@(F5) EXECUTE Dos command from List/ with CurrentFileName
*│@(F6) Turn "DIR" list into a "8.3" list of filenames (T.Farley) <-change
*│
*│@(f) Execute programs requiring filename without full path name.
*│@(h) Select Index item with cursor line, then <enter>.
*│@(q)- QUIT all files in "Ring"
*│
*│(Index) - How to locate macro or item below from Index using @h
*│(Description)
*│(Startup)
*│(Macros)
*│(Other) Macros
*│(Version) history
*└────────[ be sure to leave at least one blank line at end of Index ]────────┘
* (Index) Use;
*
* To locate a macro or item in this file, press @h, place the cursor
* line on the desired item in the Index above, and press <enter>.
* See BOOK15.QM for more details.
* (Description):
* (FILE20).QM QEdit macros allow the user to select files from a list
* to: either load a file, read a macfile, delete a file, read a macfile
* of loaded txtfile, save a read-only file, or save files with the name
* either 09141025.EXT or file NAME.914. File sorting is done using DX
* Directory Extender, not included with these files. Spell check macros
* with ShareSpell.
* File sorting is done using DX Directory Extender, v2.11. If the newer
* version 2.60 is used and it is NOT registered, the DX heading will
* show in the file selection window of @1 to @5 and the initial cursor
* line will not be positioned on the first files in the selection list.
* The file selection can be still be made by moving the cursor line to
* the desired file and pressing <enter>. Alternatively, you can either
* register DX or change the macros. I suggest registration. DX is the
* most powerful DOS file and directory manager available.
* For (other) macros, see ALLMACRO.INF
* These macros require "QEdit and QMAC v2.1, February, 1990" or later.
* (Startup): See also FILE.DOC for requirements.
*
* To BEGIN, just type "START FILE" <Enter>. All pertinent files will be
* loaded in the "Ring" for viewing, and FILE20.MAC is read.
* Alternatively, type "START FILE 0" <Enter> and the disk copies of all
* files in the "Ring" will be loaded ready for editing, saving time.
*(Macros):-------------------
*
*┌──────────────────────────────────────────────────────────────────┐
*│@(1) Selects file to LOAD from sorted list of files in directory │
*└──────────────────────────────────────────────────────────────────┘
*
@1 Macrobegin
altwordset * For all file names
EditFile "file.srt" return * Load sort list
pause * Select sort type
copy * Copy line to scrap
quit * Quit file.srt
DOS "file-DX " * Make/sort file list
paste return return *
EditFile "c:!" return * Load sorted file list
cursordown insertline *
cursordown * Get to first file name line
pause * Pause to select file
begline wordright * Put cursor on file name
markword copy * Mark/copy file name
killfile quit * Kill/quit c:!
EditFile paste return * Load file
defaultwordset * Reset default
*
* 68 bytes Sun 09-09-1990 14:38:25
*┌─────────────────────────────────────────────────────────────────────┐
*│@(2) LOAD txtfile/READ macfile from sorted list of files in directory│
*└─────────────────────────────────────────────────────────────────────┘
*
@2 Macrobegin
altwordset * For all file names
DOS "file-DX mac d-" * Sort macfiles by date
return return *
EditFile "c:!" return * Load sorted file list
cursordown insertline *
cursordown * Get to first file name line
pause * Pause to select
begline * Re-position cursor if moved
find "." return return * Select it and get to dot
CursorRight delrtword CursorLeft* Delete extension
markword copy * Mark/copy file name - no ext
killfile quit * Kill/quit c:!
EditFile paste "qm" return * Load txtfile
defaultwordset * Reset default
macroread paste "mac" return * Read macfile
*
* 78 bytes Sun 09-09-1990 14:38:29
*┌──────────────────────────────────────────────────────────────────┐
*│@(3) Selects file to DELETE from sorted list of files in directory│
*└──────────────────────────────────────────────────────────────────┘
*
* Be careful to select ONLY the file you want deleted.
*
@3 Macrobegin
altwordset * For all file names
EditFile "file.srt" return * Load sort list
pause * Pause to select sort
markline copy paste * Paste selected line
begline markword * Mark file ext
quit * Quit file.srt
DOS "file-DX " * Make/sort file list
paste return return *
EditFile "c:!" return * Load sorted file list
cursordown insertline *
cursordown * Get to first file name line
pause * Pause to select file
begline wordright * Put cursor on file name
markword copy * Select it
insertline * Insert line in c:!
paste * Paste file name
copy * Copy file name to scrap
DOS "del " paste return return * Delete select file
killfile quit * Kill/quit c:!
defaultwordset * Reset default
*
* 84 bytes Sun 09-09-1990 14:38:34
*┌─────────────────────────────┐
*│@(4) Load Files From PickList│
*└─────────────────────────────┘
*
* To run, just press Alt and 4 at the same time. At the prompt "File=",
* enter a [file name(s)] and [file sort option] to make a PickList
* using the following syntax:
*
* [file name(s)] [file sort option] <enter>
*
* where [file sort option] is either "esda".
*
* For example, when entering:
*
* c*.* s- (space must be included between name/sort option!)
*
* a file to load can be selected from a PickList of all files in
* the current directory beginning with the letter "c" sorted by size,
* largest first. Entering file name(s) WITHOUT a sort option, makes
* a PickList sorted by name an then extension.
*
* This macro can sort files in any order. The following information is
* from the file DX.DOC for Directory Extender. Please read this
* document for more information on using the excellent program DX.
*
* Sorting is by name by default. The /SOrt switch without a value sorts
* by name and then extension in ascending order. The sorting
* criteria consists of: "N" for name, "E" for extension, "S" for size,
* "D" for date/time, "A" for attribute. Specifying a letter by itself
* or with a '+' suffix indicates ascending order; specifying a '-'
* suffix indicates descending order.
*
* Examples of the sort options are:
*
* [filename(s)] ne => sort by name and extension
*
* [filename(s)] e-n- => sort files descending by
* extension first and then by
* descending name
*
* [filename(s)] snd- => sort files by ascending size,
* ascending name, and then
* descending date
*
@4 Macrobegin
unmarkblock altwordset * For all file names
begline insertline * Insert temp line
"File=" *
endline markcolumn * Start mark
pause * File name?, wild cards OK
markcolumn copy * Mark/copy file name to scrap
delline * Delete temp line
DOS "PICK " paste * Make PickList
return return *
EditFile "c:!" return * Load list
cursordown insertline *
cursordown * Get to first file name line
pause * Pause to select file
begline wordright * Put cursor on file name
markword copy * Mark/copy selection to scrap
killfile quit * Kill/quit c:!
EditFile paste return * Load file selected
defaultwordset * Reset default
*
* 60 bytes Sun 09-09-1990 14:38:38
* ┌──────────────────────────────────────────────┐
* │@(5) LOADS a file whose name is at the cursor│
* └──────────────────────────────────────────────┘
* This picks up a file name that is sitting at the cursor position in the
* editor, and loads it into another buffer (From SemWare BBS).
*
@5 Macrobegin *
altwordset * For all file names
markword * Mark file name
copy * Copy to scrap
EditFile * Load it
paste return *
defaultwordset *
*
* 11 bytes Sun 09-09-1990 14:38:43
* ┌───────────────────────────────────────┐
* │@(6) Reloads current file from disk │
* └───────────────────────────────────────┘
*
@6 Macrobegin
SplitLine EditFile CurrentFileName Return NewFile "N" Return
*
* 12 bytes Fri 08-10-1990 15:24:13
* ┌────────────────────────────────────────────────────────┐
* │@(7) Load all files in "Ring" │
* └────────────────────────────────────────────────────────┘
*
* This macro is handy if you want to quickly load all files in the
* ring. QEdit has the advantage that the EditFile, just like the QEdit
* command line, can accept multiple file names together, separated by
* spaces. Wild card file specification is also possible. The end result
* is that files can be entered in QEdit's "ring" *without* actually
* loading. Qedit defers loading files in the ring until you either
* EditFile or nextfiles into the file. This macro simply automatically
* "loads" all files in the "Ring" by NextFiling through all files. If
* your hard drive is slow (like mine), you'll appreciate the time
* this macro saves. Run this macro twice to see the difference.
* If a file is set "read-only", press <Esc>, and run the macro until
* all files are loaded. The technique using the NUL file as a place
* marker was written by Kyle Watkins of SemWare and is used here with a
* slight modification.
*
* See also QLSTxx.QM for using this macro to load files from a
* FileList.
*
@7 Macrobegin
EditFile '!' Return * Insert -or- GoTo NUL File
Begline CursorRight * Put cursor in Col. 2 of NUL File
LOOP: * Main test loop
Nextfile * Move to next files in Ring
CursorLeft * Move cursor left (need for NUL test)
Jfalse LOOP: * If couldn't move to left, it's not
* the NUL File AND cursor position
* has not changed -- LOOP again
*ELSE
* Check to see if in the NUL File
CursorLeft * Move cursor left for NUL Test
Jfalse END: * If couldn't move left -- We
* ARE in the NUL File and Need
* to END the Macro
*ELSE
CursorRight * Move back to Col. 2 in NUL File
END: * Macro is DONE
Quit * Quit the NUL File
*
* 21 bytes Tue 10-30-1990 20:05:53
*┌─────────────────────────────────────────────┐
*│@(8) Reads macfile of txtfile that is loaded │
*└─────────────────────────────────────────────┘
*
* From MACR27.QM
*
@8 Macrobegin
macroread CurrentFileName backspace backspace "mac" return
*
* 15 bytes Sun 09-09-1990 14:38:55
* ┌────────────────────────────────────────────────────────────────────┐
* │@(9) Make RingList, Load all files in ring, select file to edit │
* └────────────────────────────────────────────────────────────────────┘
*
* Does not make NEW RingList if already made.
* Both @9 and @0 have the disadvantage that each files in the ring is
* loaded and modified while getting each FileName to scratch to make
* the RingList. All files in the ring can be QUIT using @q macro.
*
@9 Macrobegin
prevfile unmarkblock * Move to prevfile so file being
* edited is first files in RingList
EditFile "!" return * Load/Edit RingList file !
endline begline * If ! is already made, it has text
jtrue GETFILE: * then GoTo GETFILE
*ELSE
dropanchor *
storescrbuff "1" return * Clear scratch buffer
Begline CursorRight * Put cursor in Col. 2 for StopFile
LOOP: * Main test loop
Nextfile * Move to next files in Ring
splitline dropanchor *
CurrentFileName *
appendscrbuff "1" return* Append filename to scratch buffer
cut * Delete block
CursorLeft * Move cursor left
* (need for StopFile test)
Jfalse DOIT: * If couldn't move to left, cursor
* must be in Col. 1 and it's not
* the StopFile -- GO with DOIT
*ELSE
* Check to see if in the StopFile File
CursorLeft * Move cursor left for StopFile Test
Jfalse RINGLIST: * If couldn't move left again -- We
* ARE in the StopFile File and Need
* to GO to RINGLIST
*ELSE
CursorRight * Restore Cursor to its previous
* position and GO with the DOIT
DOIT: * DOIT Loop
Jump LOOP: * Return to the Main Loop
RINGLIST: * Get RingList into file
EditFile "!" return * Load RingList file
getscrbuff "1" return * Put RingList in it
delline unmarkblock * Delete top line and unmark file
GETFILE: *
pause copy * Pause and select file to edit
EditFile paste return * and then begin editing it
*
* 58 bytes Mon 10-01-1990 10:56:15
* ┌────────────────────────────────────────────────────────────────────┐
* │@(0) Make RingList, Load all files in ring, select file to edit │
* └────────────────────────────────────────────────────────────────────┘
*
* Makes NEW RingList even if already made.
* Both @9 and @0 have the disadvantage that each files in the ring is
* loaded and modified while getting each FileName to scratch to make
* the RingList. All files in the ring can be QUIT using @q macro.
*
@0 Macrobegin
prevfile unmarkblock * Move to prevfile so file being
dropanchor * edited is first files in RingList
storescrbuff "1" return * Clear scratch buffer
Begline CursorRight * Put cursor in Col. 2 for StopFile
LOOP: * Main test loop
Nextfile * Move to next files in Ring
splitline dropanchor *
CurrentFileName *
appendscrbuff "1" return* Append filename to scratch buffer
cut * Delete block
CursorLeft * Move cursor left
* (need for StopFile test)
Jfalse DOIT: * If couldn't move to left, cursor
* must be in Col. 1 and it's not
* the StopFile -- GO with DOIT
*ELSE
* Check to see if in the StopFile File
CursorLeft * Move cursor left for StopFile Test
Jfalse RINGLIST: * If couldn't move left again -- We
* ARE in the StopFile File and Need
* to GO to RINGLIST
*ELSE
CursorRight * Restore Cursor to its previous
* position and GO with the DOIT
DOIT: * DOIT Loop
Jump LOOP: * Return to the Main Loop
RINGLIST: * Get RingList into file
EditFile "!" return * Load RingList file
getscrbuff "1" return * Put RingList in it
delline unmarkblock * Delete top line and unmark file
GETFILE: *
pause copy * Pause and select file to edit
Quit * Quit the RingList File
EditFile paste return * and then begin editing it
*
* 50 bytes Mon 10-01-1990 11:02:09
* ┌─────────────────────────────────────────────────┐
* │@(F1) Saves file with name "Mos_Day_Hour_Min.Ext"│
* └─────────────────────────────────────────────────┘
*
* This macro saves the current file with the name as
* "Mos_Day_Hour_Min.Ext". For example, @F1 saves this file as
* 08191025.QM when date and time are Sun 08-19-1990 10:25:00.
*
* Insert must be ON.
*
* Thanks to Jim Wright for the neat idea how to condense date and time
* with his macro in QE-MEM.ZIP. Like many other macro ideas from
* others, they often seem so simple once we see and understand them
* that we say "why didn't I think of that" - but I didn't !
@F1 Macrobegin
*************************************** TOGGLE INSERT ON*************
insertline * Insert test line
"a" CursorLeft "a" * Insert "aa"
endline * If not at endline-insert is on
Jtrue FIN: * If at endline -insert is off
toggleinsert * Toggle ON if off
FIN: *
delline * Delete test line
*************************************** CONDENSE DATE & TIME *******
unmarkblock * Begin no marked block
insertline begline * Insert line
insertdate inserttime * Get date & time to condense
markline
delltword delltword * Delete seconds
backspace * Delete :
CursorLeft CursorLeft * Keep minutes
backspace * Delete :
CursorLeft CursorLeft * Keep hour
delltword delltword * Delete spaces and year
backspace * Delete -
CursorLeft CursorLeft * Keep day
backspace * Delete -
CursorLeft CursorLeft * Keep month
delltword delltword * Delete spaces & day name
endline * Go to end of condensed number
CurrentFileName * Get CurrentFileName
find "." return "LB" return * Move to begin of extension |
jtrue HASEXT: * If dot found, file has extn.|
* and go to HASEXT |
*ELSE |
Endline "." CursorLeft * Add ".", file has NO extn. |
HASEXT: * |
unmarkblock * unmark line |
CursorLeft markcolumn * Move off dot and mark it
find ":" return "b" return * Move to :
CursorLeft deleteblock * Del all but .ext of file name
cut * Get number.ext to scrap
writeblock paste return * Save number.ext
*
* 63 bytes Sat 09-15-1990 09:58:56
* 74 bytes Wed 02-13-1991 23:16:45 modified for files with no extn.
* ┌────────────────────────────────────────────────────────┐
* │@(F2) Saves file with name "CurrentFileName.Mos_Day" │
* └────────────────────────────────────────────────────────┘
*
* Macro saves the current file with name "CurrentFileName.Mos_Day".
* For example, @F2 saves it as FILE20.214 when date and time are
* Thu 02-14-1991 10:25:00. Use this macro Jan-Sept.
*
@F2 Macrobegin
unmarkblock * Begin no marked block
insertline begline * Insert line
insertdate * Get date & time to condense
delltword delltword * Delete spaces and year
backspace * Delete -
CursorLeft CursorLeft * Keep day
backspace * Delete -
CursorLeft * Keep last digit of month,
backspace * Delete first digit of month
backspace * Delete -
delltword delltword * Delete spaces & day name
begline *
CurrentFileName * Get CurrentFileName
delltword * Delete extension
cut * Get file name.num to scrap
writeblock paste return * Save file name.num
*
* 26 bytes Wed 10-03-1990 19:24:02
* * Macro saves the current file with name "CurrentFileName.Mos_Day".
* * For example, @F2 saves it as FILE20.119 when date and time are
* * Sun 10-19-1990 10:25:00. Use this macro Oct-Dec.
* *
* @F2 Macrobegin
* unmarkblock * Begin no marked block
* insertline begline * Insert line
* insertdate * Get date & time to condense
* delltword delltword * Delete spaces and year
* backspace * Delete -
* CursorLeft CursorLeft * Keep day
* backspace * Delete -
* backspace * Delete last digit of month
* CursorLeft * Keep first digit of month,
* delltword delltword * Delete spaces & day name
* begline *
* CurrentFileName * Get CurrentFileName
* delltword * Delete extension
* cut * Get file name.num to scrap
* writeblock paste return * Save file name.num
* *
* * 25 bytes Fri 10-19-1990 12:53:19
* ┌──────────────────────────────────────────────┐
* │@(F3) Saves Read-Only files │
* └──────────────────────────────────────────────┘
*
* This macro will save the currently loaded file if the file attribute
* on the disk copy is set to Read-Only. QEdit currently will not save
* files loaded as Read-Only.
*
* This macro is written to use either Dos ATTRIB, Gavin's ALTER, or
* Norton's FA. To change from using Dos ATTRIB change the respective
* lines in the macro and reconvert with QMAC.
*
* One word of caution: any file on the disk in the current directory
* with same prefix as the loaded file will have it's read attribute
* reset to read OFF regardless of the extension. Gavin's ALTER is the
* fastest way to reset attributes but it also resets ALL the attributes,
* including the archive bit, of ALL files in the directory with the same
* prefix.
*
* To save a file loaded as Read-Only just press @F3:
@F3 Macrobegin
unmarkblock * Unmark blocks
insertline * Insert blank line on top
markcolumn *
CurrentFileName markcolumn * Get CurrentFileName on line
storescrbuff "1" return * Store currentfilname to buf/1
find "." return "LB" return * Find dot back in block |
jtrue IFEXT: * If dot found go to IFEXT:
endline ".*" * Add ".*" if name has NO ext
jump FULLEXT: * Go to FULLEXT
IFEXT: * If name has extension then..
CursorRight DelToEol "*" * Add "*" after dot
FULLEXT: *
copy * Copy "prefix.*" to scrap
delline * Delline
changefilename "$" return * Change CurrentFileName to $
dos "ATTRIB -R " * Clear Read Only attribute...
paste return return * w/ Dos ATTRIB
* dos "ALTER " *
* paste "/RE" return return * w/ Gavin ALTER (Fastest)
* dos "FA " *
* paste "/R-" return return * w/ Norton FA
insertline * Insert blank line in $
unmarkblock * Unmark all blocks
getscrbuff "1" return * Get origfilename on line
copy * Copy to scrap
delline * Delline
changefilename paste return * Change $ to origfilename
return * Gives OK to overlay origfile
savefile * Save origfile
*
* 78 bytes Tue 01-29-1991 19:26:21 changed "B " to "B"
* 80 bytes Wed 02-13-1991 16:14:29 chnaged "B" to "LB"
*┌──────────────────────────────────────┐
*│ @(F4) Execute Dos Commands From List │
*└──────────────────────────────────────┘
* To run, just press @F4 and move cursor line to the desired command
* to execute. Then press <enter> to execute command and return to file
* you editing. Modify DOS.LIST as you need.
*
* Run Syntax: [command] <enter>
@F4 Macrobegin
unmarkblock *
EditFile "DOS.LST" return * Load command list
pause * Select command
copy * Get command to scrap
quit * Quit command list
DOS paste return * Execute Dos command |
*
* 28 bytes Sat 09-15-1990 08:56:57
* 27 bytes Mon 02-11-1991 11:11:56 removed second return
*┌──────────────────────────────────────────────────────────┐
*│ @(F5) Execute Dos Commands From List With CurrentFileName│
*└──────────────────────────────────────────────────────────┘
*
* To run, just press @F5 and move cursor line to the desired command
* to execute. Then press <enter> to execute command. Press <enter> again
* to return to file you were editing. Dos executes the command as if it
* were run at the command line followed by the CurrentFileName, then
* <enter>. Modify the DOS.LIST as you need.
* I recall getting this macro from the SemWare BBS but do not recall
* the author. If anyone knows, please let me know so I can give proper
* credit. It's quite a useful and simple macro.
*
* Run Syntax: [command] CurrentFileName <enter>
*
@F5 Macrobegin
unmarkblock *
EditFile "DOS.LST" return * Load command list
pause * Select command
copy * Get command to scrap
quit * Quit command list
DOS paste " " CurrentFileName * Execute command w/
* CurrentFileName
return *
*
* 30 bytes Sat 09-15-1990 09:24:37
*----------------------------------------------------
* Macro @(F6) does a DIR and ends up with a list of
* filenames in conventional "8.3" format, no spaces!
*---------------------------------------------------
* *
* * DIRLIST: turn a DOS "DIR" command into a list of filenames.
* *
* * By: Tim Farley (For Ken Housley on RelayNet).
* * Date: October 22, 1990
* *
* (| = TH changes)
@F6 Macrobegin
unmarkblock dropanchor * | Mark file to return at end
Dos "DIR " Pause EndLine ">c:!"* | DIR list to temp file
Return Return * |
EditFile "c:!" Return Quit * |Quit temp file if loaded
* | Change c:! to ramdrive
* | for faster operation
HorizontalWindow *
EditFile Return * |
DelLine 6 * | Delete header info
* | May have to change for
* | DOSVER >3.3
EndFile DelLine * Delete totals line
JFalse abort: * Failed? NO FILES!
BegFile * Back to top line, please.
GotoColumn "13" Return * Just past filename
loopeol:
DelToEol * delete size/date/etc.
CursorDown * go to next file.
JTrue loopeol: * repeat until no more
BegFile * Back to top.
GotoColumn "9" Return * Column where "." goes.
loopdot:
"." CursorLeft * add a "." to each name
CursorDown * try to go to next
JTrue loopdot: * repeat until no more
BegFile
FindReplace " " Return * replace all spaces with
DelLine Return * NOTHING!
"NG" Return * No prompting, just do it.
abort:
killfile * | Kill temp file
escape escape * | Eliminate "changes made" message
pause closewindow * | Pause, then close window
gotoblockbeg unmarkblock * | Go back to file we were editing
*
* 100 bytes Sun 10-28-1990 11:58:10 (added TH)
* 108 bytes Mon 02-11-1991 15:49:18 (added TH)
* 92 bytes Thu 02-14-1991 16:40:32 (changed $$$.TMP to c:!)
* The above macro would require QEdit 2.1 and QMAC 2.1 for use. If
* you want to put it in your QCONFIG.DAT, remove all the comments
* and reformat it so it fits all on one line.
*
* Thanks for the detailed comments about WordRight/WordLeft.
*
* --Tim Farley
* SemWare Technical Support
* ┌─────────────────────────────────────────────────────────┐
* │@(F7) READ macfile & LOAD it's txtfile from txtfile list │
* └─────────────────────────────────────────────────────────┘
*
* @F7 enables a file to be selected for editing and it's macfile read
* from a prepared list of txtfiles. The list of txtfiles (-qm.lst)
* included with FILE20 is a list of the latest macros in this series,
* but it can be altered to meet your needs by adding [drive:]\[path\]
* both in front of each files in the list and also in the second line of
* the macro, and adding or deleting any files you choose to/from this
* list. The modified macro can be put in your QCONFIG.DAT file and
* macros can be loaded and read while in any directory. To run, press
* @F7, cursor down to the desired file, and press <enter>. Remember,
* txtfiles must have the extension "QM" and the macfiles must have the
* extension "MAC".
*
@F7 Macrobegin
EditFile "-qm.lst" return * Edit txtfile list
pause * Pause to select macro to read
endline * Go to end of file name
backspace backspace * and remove it's extension
copy quit * Copy file name to scrap
EditFile paste "qm" return * Load selected macro txtfile
macroread paste "mac" return * and read it's macfile
*
* 42 bytes Thu 10-18-1990 12:23:41
*┌───────────────────────────────────────────────────────────┐
*│ @(F8) READ macfile from macfile list, txtfile not loaded │
*└───────────────────────────────────────────────────────────┘
*
* @F8 enables a macfile to be selected and read from a prepared list
* of macfiles. The list of macfiles (-mac.lst) included with FILE20 is
* a list of the latest macros in this series, but it can be altered to
* meet your needs by adding [drive:]\[path\] in front of each files in
* the list and also in the second line of the macro, and adding or
* deleting any files you choose to/from this list. The modified macro
* can be put in your QCONFIG.DAT file and macros can be read while in
* any directory. To run, press @F8, cursor down to the desired file,
* and press <enter>. Remember, macfiles must have the extension "MAC".
*
@F8 Macrobegin
EditFile "-mac.lst" return * Edit macfile list
pause * Pause to select macro to read
endline * Go to end of macfile name
backspace backspace backspace * and remove it's extension
copy quit * Copy macro name to scrap
macroread paste "mac" return * Read it's macfile only
*
* 38 bytes Thu 10-18-1990 12:23:50
*------------------------------------------------------------
* #(F3_) Spell check current file WITH backup with ShareSpell,
* QCONFIG.DAT backups ON or OFF, SS makes a backup file.
*------------------------------------------------------------
*
#F3 Macrobegin *
SaveFile * Save file
Dos "SS " CurrentFileName Return Return * Spell Check
EditFile CurrentFileName Return * Set EditFile prompt
NewFile Return * Load Spell checked file
*
* 20 bytes Wed 02-13-1991 12:32:29
*-----------------------------------------------------------------
* #(F4_) Spell check WITHOUT backup, QCONFIG.DAT backups ON or OFF
*-----------------------------------------------------------------
* This macro does not save a backup file no matter how QCONFIG.DAT is
* configured for backups. If a beep is heard, the file being spell
* checked does not have an extension (no dot was found).
*
#F4 Macrobegin
Unmarkblock Insertline Begline * Insert temp line with
Dropanchor CurrentFileName * CurrentFileName marked
Find "." Return "LB" Return * Find dot backwards in name
jtrue HASEXT: * If dot found, file has extn.
* and go to HASEXT
*ELSE
Endline "." CursorLeft * Add ".", file has NO extn.
HASEXT: *
CursorRight DelToEol "bak" *THEN add "bak" after dot
Cut Savefile * Cut name.bak to scrap/save it
DOS "SS " CurrentFileName Return Return * ShareSpell spell check
DOS "DEL " Paste Return Return * Delete name.bak
EditFile CurrentFileName Return * Set EditFile prompt
NewFile Return * Load spell checked file
*
* 62 bytes Thu 02-14-1991 12:19:16
*---------------------------------------------------------
* #(F5_) Saves file WITHOUT backup, QCONFIG.DAT backups ON
*---------------------------------------------------------
* Saves files without making a backup file if QCONFIG.DAT
* is configured "Yes" to "Do you want backups saved?".
*
#F5 Macrobegin Togglebakups SaveFile Togglebakups
*
* 7 bytes Tue 02-12-1991 03:39:44
*----------------------------------------------------------------
* #(F6_) Saves file WITHOUT backup, QCONFIG.DAT backups ON or OFF
*----------------------------------------------------------------
* This is an alternate version of #F5 which does not save a backup
* file no matter how QCONFIG.DAT is configured for backups. If a
* beep is heard, the file being saved does not have an extension
* (no dot was found).
*
#F6 Macrobegin
Unmarkblock Insertline Begline * Insert temp line with
Dropanchor CurrentFileName * CurrentFileName marked
Find "." Return "LB" Return * Find dot backwards
jtrue HASEXT: * If dot found, file has extn.
* and go to HASEXT
*ELSE
Endline "." CursorLeft * Add ".", file has NO extn.
HASEXT: *
CursorRight DelToEol "bak" *THEN add "bak" after dot
Cut Savefile * Cut name.bak to scrap/save file
DOS "del " Paste Return Return * Delete name.bak
*
* 47 bytes Thu 02-14-1991 12:11:50
* Here's an alternate version of #F6 that saves a file without a
* backup no matter how QCONFFIG.DAT is configured. Be careful that no
* line feed or carriage return characters are in the file or the saved
* file will be formatted with these characters removed.
*
* #F6 Macrobegin *
* unmarkblock killfile * Kill disk copy so writeblock
* * works without prompts
* writeblock currentfilename return * Save file as block
*
* 8 bytes Thu 02-14-1991 12:28:01
*--------------------------------------
* #(F7_) Deletes CurrentFileName Backup
*--------------------------------------
*
#F7 Macrobegin
Unmarkblock Insertline Begline * Insert temp line with
Dropanchor CurrentFileName * CurrentFileName marked
Find "." Return "LB" Return * Find dot backwards
jtrue HASEXT: * If dot found, file has extn.
* and go to HASEXT
*ELSE
Endline "." CursorLeft * Add ".", file has NO extn.
HASEXT: *
CursorRight DelToEol "bak" *THEN add "bak" after dot
Cut * Cut name.bak to scrap
DOS "DEL " Paste Return Return * Delete name.bak
* DOS "DX " Paste "//DEL" * Alternate verify delete
* Return Return * with Directory Extender DX
*
* 46 bytes Wed 02-13-1991 16:15:49
*----------------------------------
* #(F8_) Edit CurrentFileName Backup
*----------------------------------
*
#F8 Macrobegin
Unmarkblock Insertline Begline * Insert temp line with
Dropanchor CurrentFileName * CurrentFileName marked
Find "." Return "LB" Return * Find dot backwards
jtrue HASEXT: * If dot found, file has extn.
* and go to HASEXT
*ELSE
Endline "." CursorLeft * Add ".", file has NO extn.
HASEXT: *
CursorRight DelToEol "bak" *THEN add "bak" after dot
Cut * Cut name.bak to scrap
EditFile Paste Return * Load name.bak
*
* 37 bytes Wed 02-13-1991 16:16:03
*┌───────────────────────────────────────────────────────────────────┐
*│@(h) Finds first word on cursor line marked in document below │
*└───────────────────────────────────────────────────────────────────┘
*
* @h macro has 2 steps:
*
* 1. Press @ and h at the same time. An ! shows at the
* end of the top line. Cursor down to desired line in Index.
*
* 2. Press Enter. The macro first erases the !, and
* then finds the first word on the cursor line in the document
* below marked with (...).
*
* See BOOK15.QM for more details.
*
@h Macrobegin
unmarkblock * Unmark any marked blocks
begfile endline * Go to file begin endline
"!" * Put ! at endline
begline
find "!" return return begline * Highlight !
pause * Pause for Index selection
wordright markword * Mark first word on line
copy * Copy word to scrap buffer
begfile * Begfile
find "!" return return delch * Find & delete !
endpara * Go to end of Index
makectrofscreen * Cursor line center of window
find "(" paste ")"
return "I" return * Find first marked word in doc
jfalse NOMARK:
begline * If mark found go to begline
jump END:
NOMARK:
begfile * If no mark found go to begfile
END:
*
* 47 bytes Fri 09-14-1990 14:06:26
*┌──────────────────────────────────┐
*│@(q) QUITs all Files in Ring │
*└──────────────────────────────────┘
*
@q Macrobegin
LOOP:
quit
jump LOOP:
*
* 8 bytes Sat 09-29-1990 00:03:46
*┌────────────────────────────────────────────────────────────────┐
*│@(f) Executes programs requiring filename without full pathname │
*└────────────────────────────────────────────────────────────────┘
*
@f Macrobegin
Unmarkblock Insertline * Insert temp line
CurrentFileName * with CurrentFileName
MarkCharacter * Begin mark
Find "\" Return "B" Return * Find \ backwards
CursorRight Cut * Cut filename to scrap
Delline * Delete temp line
Dos "dir " Paste Return * Execute "dir"
** Change "dir " to "program " name
*
* 29 bytes Wed 01-23-1991 20:59:24
* (Version) History:
*
* 1.0 - Initial version named SORT10.ZIP
* 1.1 - changed and shortened Alt-f3 to keep extraneous files
* from ring
* - Changed file names from SORTxx.xxx to FILExx.xxx.
* 1.2 - DX Directory Extended not included to save download time.
* 1.2a- Changed other file names in series, this is an update.
* 1.3 - Added @4 to load files from PickList, wild cards OK.
* - Changed j:$ to c:! in macros and batch file.
* - Changed .QL and .LST files.
* - Changed key assignments from alternate_functions
* to alternate_numbers.
* - All macros shortened.
* 1.4 - FILE-DX.BAT was not saving "echo .." initialization; corrected.
* - Modified macros @1-4 so Insert does NOT have to be ON.
* - Added AltWordSet to @1-4 to get all files.
* - Removed need to use scratch buffers in @3.
* - Added @5 to LOAD a file whose name is at the cursor.
* - Added @6 to execute Dos Commands From List.
* - Added @7 to EXECUTE DOS commands from List
* with CurrentFileName.
* - Added @8 to read macfile of txtfile that is loaded.
* - Added ^3 to save Read-Only files.
* - Added ^1 and ^2 to save files with date-time name.
* - Modified @1-4 and batch files to exclude directories in file
* list and PickList.
* - Removed check to quit c:! if already loaded in @1-4.
* - Changed @4 to use only PICK.BAT.
* 1.5 - Added @9 to select file to edit from RingList
* - Added @0 to select file to edit from RingList if new files have
* been loaded since making last RingList
* - Added @h to FIND items or macros in Index.
* - Added @q to QUIT all files in ring.
* 1.6 - Added @6 to re-LOAD current file from disk copy.
* - Modified @9 and @0 to be faster and shorter.
* - Modified @F2 for correct extension Oct-Dec.
* - Changed @F1 thru @F5 key assignments.
* 1.7 - Added @F6 to turn "DIR" command into a "8.3" list of filenames,
* written by T. Farley of SemWare.
* - Added @F7 and @F8 to read and load txtfiles and macfiles from
* a prepared list of active txtfiles and macfiles.
* - Modified @F2 for Oct-Dec and added alternate version
* for Jan-Sept.
* - DOS.LST was inadvertantly left out of versions since 1.4.
* It is now included.
* 1.8 - Modified @F6 for DOS Ver 3.3, other Dos versions not tested.
* - Modified documentation and added START.BAT.
* - Added @z to load all files in "Ring" buffer.
* - Modified @F2 for Jan-Sep and added alternate version
* for Oct-Dec.
* 1.9 - Added @F to execute programs requiring filename without full
* path name.
* - Corrected @h Index Use instructions.
* - Shortened @F3 2 bytes.
* 2.0 - Added #F3 & #F4 to spell check with ShareSpell.
* - Added #F5 & #F6 to save files without making backups.
* - Added #F7 & #F8 to delete and edit CurrentFileName Backup.
* - Modified @F1 to handle file names with no extension.
* - Changed @F3 in "B" to "LB" to search for dot only in block.
* - From @F4 removed second return to not pause after executing.
* DOS command.
* - Modified @F6 to handle multiple runs correctly.
* - Changed $$$.TMP to C:! in @F6, shortened 16 bytes.
* - Change @z key to @7.
* Tom Hogshead Thu 02-14-1991